﻿using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Data.Entity;
using System.Linq;
using System.Web;

namespace projetoFinal.Models
{
    [Table("contrato")]
    public class Contrato : DbContext
    {
        public long Id { get; set; }

        public virtual ICollection<Pessoa> Pessoas { get; set; }

        public virtual Plano PlanoID { get; set; }
            
        [RegularExpression(@"[a-zA-Z]{6,8}", ErrorMessage = "Somente letras.")]
        [Required(ErrorMessage = "Campo Obrigatorio")]
        public string Tipo { get; set; }

        [RegularExpression(@"[a-zA-Z]{5,200}", ErrorMessage = "Somente letras.")]
        [Required(ErrorMessage = "Campo Obrigatorio")]
        public string Descricao { get; set; }

        [RegularExpression(@"[a-zA-Z]{5,7}", ErrorMessage = "Somente letras.")]
        [Required(ErrorMessage = "Campo Obrigatorio")]
        public string Situacao { get; set; }

        [RegularExpression(@"[0-9]", ErrorMessage = "Somente Números.")]
        [Required(ErrorMessage = "Campo Obrigatorio")]
        public DateTimeKind Dtinicial { get; set; }

        [RegularExpression(@"[0-9]", ErrorMessage = "Somente Números.")]
        [Required(ErrorMessage = "Campo Obrigatorio")]
        public DateTime Dtfinal { get; set; }

        [RegularExpression(@"[0-9]", ErrorMessage = "Somente Números.")]
        [Required(ErrorMessage = "Campo Obrigatorio")]
        public DateTime Dtatualizacao { get; set; }

        [RegularExpression(@"[0-9]", ErrorMessage = "Somente Números.")]
        [Required(ErrorMessage = "Campo Obrigatorio")]
        public long Login { get; set; }
    }
}